package com.alexrnl.BetaSeriesFileManager.API.entities;

import java.util.logging.Level;
import java.util.logging.Logger;

/**
 * Inner class for the note on a show.
 * @author Alex
 */
public class Note {
	private static Logger	T	= Logger.getLogger(Note.class.getName());

	private Integer			selfNote;
	private Double			mean;
	private Integer			nbMembers;

	/**
	 * Constructor #1.<br />
	 * Build a note with a note from the logged member.
	 * @param selfNote
	 *            the note given to the show by the logged member
	 * @param mean
	 *            the mean note of the show
	 * @param nbMembers
	 *            the number of member who gave a note to the show
	 */
	public Note (final Integer selfNote, final Double mean, final Integer nbMembers) {
		super();
		this.selfNote = selfNote;
		this.mean = mean;
		this.nbMembers = nbMembers;
		T.logp(Level.FINE, this.getClass().getName(), "Note(Integer, Double, Integer)",
				"Builing a note (" + selfNote + ", " + mean + ", " + nbMembers + ")");
	}

	/**
	 * Constructor #2.<br />
	 * Build a note without a note from the logged member.
	 * @param mean
	 *            the mean note of the show
	 * @param nbMembers
	 *            the number of member who gave a note to the show
	 */
	public Note (final Double mean, final Integer nbMembers) {
		this(null, mean, nbMembers);
	}

	/**
	 * @return the selfNote
	 */
	public Integer getSelfNote () {
		return selfNote;
	}

	/**
	 * @param selfNote
	 *            the selfNote to set
	 */
	public void setSelfNote (final Integer selfNote) {
		this.selfNote = selfNote;
	}

	/**
	 * @return the mean
	 */
	public Double getMean () {
		return mean;
	}

	/**
	 * @param mean
	 *            the mean to set
	 */
	public void setMean (final Double mean) {
		this.mean = mean;
	}

	/**
	 * @return the nbMembers
	 */
	public Integer getNbMembers () {
		return nbMembers;
	}

	/**
	 * @param nbMembers
	 *            the nbMembers to set
	 */
	public void setNbMembers (final Integer nbMembers) {
		this.nbMembers = nbMembers;
	}

}